'''
冰雹猜想:

冰雹猜想的内容是：任何一个大于1的整数n，
按照n为偶数则除等2，n为奇数则乘3后再加1的规则不断变化，
最终都可以变化为1。

例如，n等于20，变化过程为：20、10、5、16、8、4、2、1。编写程序，
用户输入n，输出变化过程以及变化的次数。
'''


def resolution1():
    number = eval(input())
    count = 0

    while number != 1:
        print(f"{number}", end=" ")
        if number % 2 == 0:
            number = int(number / 2)
        else:
            number = int(number * 3 + 1)
        count += 1
    print(1)
    print(f"count = {count+1}")


def resolution2():
    number = eval(input())
    res_list = [ eval("number") ]

    while(number != 1):
        if number % 2 == 0:
            number = int(number / 2)
            res_list.append(number)
        else:
            number = int(number * 3 + 1)
            res_list.append(number)

    # 一种比较有Python特征的控制列表元素的输出格式的方法
    # str.format()
    # str.join()
    output = "{}".format(" ".join(str(item) for item in res_list))
    print(output)
    print(f"count = {len(res_list)}")


if __name__ == '__main__':
    # resolution1()
    resolution2()